﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DevExpress.Web.ASPxEditors;
using System.Configuration;
using DevExpress.Web.ASPxGridView;
using System.Drawing;
using Negocio.BL;
using Entidad;
namespace EvolSoftWeb
{
    public partial class wFrmClienteActualizar : System.Web.UI.Page
    {


        UsuarioLogic negocioUsuario = new UsuarioLogic();
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
              
                this.cargarDatosClientes();
            }

        }


        private void cargarDatosClientes()
        {
            List<T_S_USUARIO> lista = new List<T_S_USUARIO>();
            
           try
            {
                if (Session[DatosSesion.User]!=null)
                {
                  lista=negocioUsuario.listarUsuariosXid(Session[DatosSesion.User].ToString());
                  if (lista.Count!=0)
                  {
                      txtApellidos.Text = lista[0].DES_APELLIDOS;
                      txtCorreoElectronico.Text = lista[0].DES_EMAIL;
                      txtNombreUsuario.Text = lista[0].DES_NOMBRE;
                      txtUsuario.Text = lista[0].ID_USUARIO;
                  }
   
                }
            }
            catch (System.Exception ex)
            {

            }
        }
       


        void limpiarControles()
        {

            txtApellidos.Text = "";
            txtCorreoElectronico.Text = "";
            txtNombreUsuario.Text = "";


        }


        protected void btnLimpiar_Click(object sender, EventArgs e)
        {
            limpiarControles();
        }

        protected void btnGrabar_Click(object sender, EventArgs e)
        {
            try
            {
                if (txtApellidos.Text == String.Empty || txtCorreoElectronico.Text == String.Empty || txtNombreUsuario.Text == String.Empty)
                {
                    lblmsj.Text = String.Empty;
                    lblmsj.Text = "Rellene los campos vacios!";
                    string script = "ShowMsj();";
                    ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);
                }
                else
                {
                    if (Session["operacion"].ToString() == "1")
                    {


                        this.registrar();


                    }
                    else
                    {

                        this.Actualizar();


                    }
                }
            }
            catch
            {

            }

        }

        void registrar()
        {

            try
            {

                UsuarioLogic usuarioLogic = new UsuarioLogic();
                if (usuarioLogic.TraerEmail(txtUsuario.Text).Count() > 0)
                {

                    lblmsj.Text = String.Empty;
                    lblmsj.Text = "El usuario ya existe por favor ingrese un usuario diferente";
                    string script = "ShowMsj();";
                    ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);

                }
                else
                {



                    if (txtUsuario.Text == String.Empty || txtApellidos.Text == String.Empty || txtCorreoElectronico.Text == String.Empty || txtNombreUsuario.Text == String.Empty || txtpassword.Text == String.Empty || txtpasswordConfir.Text == String.Empty)
                    {
                        lblmsj.Text = String.Empty;
                        lblmsj.Text = "Rellene todo los campos por favor";
                        string script = "ShowMsj();";
                        ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);
                    }
                    else
                    {
                        T_S_USUARIO usuario = new T_S_USUARIO();
                        usuario.ID_USUARIO = txtUsuario.Text;
                        usuario.DES_NOMBRE = txtNombreUsuario.Text;
                        usuario.DES_PASSWORD = negocioUsuario.EncriptarPasswordUser(this.txtpassword.Text);

                        usuario.IND_ESTADO = cboEstado.Text.Substring(0, 1);
                        if (CheckBoxRecordar.Checked == true)
                        {
                            usuario.IND_COOKIE = "S";
                        }
                        else
                        {

                            usuario.IND_COOKIE = "N";
                        }

                        if (negocioUsuario.insert(usuario))
                        {
                            //this.insertarUsuarioGrupo();
                            lblmsj.Text = String.Empty;
                            lblmsj.Text = "Se grabo correctamente  ";
                            string script = "ShowMsj();";
                            ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);
                            this.limpiarControles();
                        }
                        else
                        {
                            lblmsj.Text = String.Empty;
                            lblmsj.Text = "Error no se pudo grabar ";
                            string script = "ShowMsj();";
                            ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);

                        }



                    }


                }


            }
            catch { }






        }

    
        //}

        void Actualizar()
        {

            try
            {

                T_S_USUARIO usuario = new T_S_USUARIO();
                usuario.ID_USUARIO = txtUsuario.Text;
                usuario.DES_NOMBRE = txtNombreUsuario.Text;
                usuario.DES_PASSWORD = negocioUsuario.EncriptarPasswordUser(txtpassword.Text);
                Session["DES_PASSWORD"] = usuario.DES_PASSWORD;

                usuario.IND_ESTADO = cboEstado.Text.Substring(0, 1);
                //usuario.FEC_REGISTRO = DateTime.Now;

                // usuario.ID_TIPO_USUARIO = Convert.ToInt32(cboTipoUsuario.Value);

                //usuario.TIPO_USUARIO = Convert.ToString(cboTipoUsuario.SelectedItem.Value);


                if (CheckBoxRecordar.Checked == true)
                {
                    usuario.IND_COOKIE = "S";
                }
                else
                {

                    usuario.IND_COOKIE = "N";
                }

                bool flagModificado = negocioUsuario.modificar(usuario);
                if (flagModificado)
                {

                    //this.actualizarUsuarioGrupo();

                    lblmsj.Text = String.Empty;
                    lblmsj.Text = "Se actualizo correctamente !";
                    string script = "ShowMsj();";
                    ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);
                }
                else
                {

                    lblmsj.Text = String.Empty;
                    lblmsj.Text = "Error al actualizar!";
                    string script = "ShowMsj();";
                    ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);

                }


            }
            catch (Exception ex)
            {


            }

        }

    

        protected void btnCambiarPassword_Click(object sender, EventArgs e)
        {
            //txtPasswordNuevo.Text = "";
        }

  



        protected void btnSalir_Click(object sender, EventArgs e)
        {

            Response.Redirect("wFrmUsuario.aspx?id=" + ConfigurationManager.AppSettings["Seguridad"]);
        }

    }

}